In the aforementioned patent applications, an embodiment of a microprogrammed data processing system is disclosed which provides for the execution of tasks in a manner so as to achieve the advantages of both multiprogramming and microprocessing of tasks at a microinstruction level. One object of the present invention is to provide improved means and methods for controlling subroutine operations in a system of this type.
A more general object of the present invention is to provide improved subroutine control means and methods in a data processing system.
An additional object of the invention is to provide multi-phase subroutine control circuitry in a data processing system which can accommodate many levels of subroutine entry and which provides for sharing subroutines among a large plurality of instructions and/or tasks.
In a particular preferred embodiment, the invention is adapted for incorporation in a data processing system of the type disclosed in the aforementioned patent applications wherein a plurality of tasks are concurrently performed in a manner so as to provide for the multiprogramming and multiprocessing of tasks at a microinstruction level. In the preferred embodiment of the present invention, a particularly advantageous subroutine control capability is provided using a plurality of selectably accessible stacks, one for each task, along with corresponding pointer registers. Also, a relatively faster access register is provided for storing the most recent return address of each task so as to permit return addresses to be rapidly made available when required. Operation is provided in a manner which permits multiple levels of subroutine entry to be accommodated for each task, while also permitting many tasks to share the same subroutines. In addition, subroutine control operations are staged for performance in a multiprogramming and multiprocessing environment so as to be able to provide multi-phase subroutine control for a plurality of concurrently executing tasks.
The specific nature of the invention as well as other objects, features, advantages and uses thereof will become evident from the following detailed description of the invention taken in conjunction with the accompanying drawings.